package com.hulk.ratel.persistence.entity

import java.util.Date
import com.baomidou.mybatisplus.annotations.TableField
import com.baomidou.mybatisplus.annotations.TableId
import com.baomidou.mybatisplus.enums.IdType
import com.baomidou.mybatisplus.activerecord.Model
import com.baomidou.mybatisplus.annotations.TableName
import java.io.Serializable

/**
 * <p>
 * 
 * </p>
 *
 * @author hulk
 * @since 2018-08-29
 */
@TableName("t_partner_info")
class TPartnerInfo : Model<TPartnerInfo>() {

    @TableId(value = "id", type = IdType.ID_WORKER)
    var id: Long? = null
    @TableField("partner_no")
    var partnerNo: String? = null
    /**
     * REALITY-商户真实的
            VIRTUAL-商户虚拟的
            BOTH-两者都包括
     */
    @TableField("partner_type")
    var partnerType: String? = null
    @TableField("partner_name")
    var partnerName: String? = null
    /**
     * 01-1级
            02-2级
     */
    @TableField("partner_grade")
    var partnerGrade: String? = null
    @TableField("partner_intro")
    var partnerIntro: String? = null
    /**
     * XML
            JSON
     */
    @TableField("serialization_mode")
    var serializationMode: String? = null
    /**
     * 00 未启用
            01 启用
            02 停用
            05 注销
     */
    var status: String? = null
    @TableField("group_code")
    var groupCode: String? = null
    /**
     * T0-当日
            T1-隔日
     */
    @TableField("arrive_mode")
    var arriveMode: String? = null
    /**
     * DIRECT-直清
            SECOND-二清
     */
    @TableField("clearing_mode")
    var clearingMode: String? = null
    /**
     * PARTNER-以合作者的范围进行统一标准分润
            MERCHANT-以合作者下的每个商户不同的标准分润
     */
    @TableField("share_mode")
    var shareMode: String? = null
    @TableField("contact_name")
    var contactName: String? = null
    @TableField("contact_mobile")
    var contactMobile: String? = null
    @TableField("contact_phone")
    var contactPhone: String? = null
    @TableField("contact_fax")
    var contactFax: String? = null
    @TableField("contact_email")
    var contactEmail: String? = null
    @TableField("f_linkman_name")
    var fLinkmanName: String? = null
    @TableField("f_linkman_phone")
    var fLinkmanPhone: String? = null
    @TableField("f_linkman_fax")
    var fLinkmanFax: String? = null
    @TableField("f_linkman_email")
    var fLinkmanEmail: String? = null
    var remark: String? = null
    @TableField("start_date")
    var startDate: Date? = null
    @TableField("expiry_date")
    var expiryDate: Date? = null
    @TableField("created_by")
    var createdBy: String? = null
    @TableField("created_time")
    var createdTime: Date? = null
    @TableField("audited_time")
    var auditedTime: Date? = null
    /**
     * N-未审核
            Y-已审核
            U-已修改
     */
    @TableField("audited_flag")
    var auditedFlag: String? = null
    @TableField("audited_by")
    var auditedBy: String? = null
    @TableField("updated_by")
    var updatedBy: String? = null
    @TableField("updated_time")
    var updatedTime: Date? = null
    @TableField("archived_time")
    var archivedTime: Date? = null
    /**
     * N-未归档
            Y-已归档
     */
    @TableField("archived_flag")
    var archivedFlag: String? = null
    @TableField("ori_id")
    var oriId: String? = null
    @TableField("tenant_id")
    var tenantId: String? = null
    @TableField("lock_version")
    var lockVersion: Long? = null
    var rsv1: String? = null
    var rsv2: String? = null
    var rsv3: String? = null


    override fun pkVal(): Serializable? {
        return id
    }

    override fun toString(): String {
        return "TPartnerInfo{" +
        ", id=" + id +
        ", partnerNo=" + partnerNo +
        ", partnerType=" + partnerType +
        ", partnerName=" + partnerName +
        ", partnerGrade=" + partnerGrade +
        ", partnerIntro=" + partnerIntro +
        ", serializationMode=" + serializationMode +
        ", status=" + status +
        ", groupCode=" + groupCode +
        ", arriveMode=" + arriveMode +
        ", clearingMode=" + clearingMode +
        ", shareMode=" + shareMode +
        ", contactName=" + contactName +
        ", contactMobile=" + contactMobile +
        ", contactPhone=" + contactPhone +
        ", contactFax=" + contactFax +
        ", contactEmail=" + contactEmail +
        ", fLinkmanName=" + fLinkmanName +
        ", fLinkmanPhone=" + fLinkmanPhone +
        ", fLinkmanFax=" + fLinkmanFax +
        ", fLinkmanEmail=" + fLinkmanEmail +
        ", remark=" + remark +
        ", startDate=" + startDate +
        ", expiryDate=" + expiryDate +
        ", createdBy=" + createdBy +
        ", createdTime=" + createdTime +
        ", auditedTime=" + auditedTime +
        ", auditedFlag=" + auditedFlag +
        ", auditedBy=" + auditedBy +
        ", updatedBy=" + updatedBy +
        ", updatedTime=" + updatedTime +
        ", archivedTime=" + archivedTime +
        ", archivedFlag=" + archivedFlag +
        ", oriId=" + oriId +
        ", tenantId=" + tenantId +
        ", lockVersion=" + lockVersion +
        ", rsv1=" + rsv1 +
        ", rsv2=" + rsv2 +
        ", rsv3=" + rsv3 +
        "}"
    }
}
